<!-- 在公共模块下创建公共控制器 目录:application/common/controller/Home.php -->
<?php

namespace app\common\controller;

use think\Controller;

// 公共前台控制器
class Home extends Controller
{
    public function __construct()
    {
        parent::__construct();

        // 实例化cookie里面LoginUser的值，如果不存在则返回一个空字符串 视图可以通过{$LoginUser['nickname']}拿到字段值
        $LoginUser = cookie('LoginUser') ? cookie('LoginUser') : '';

        // 如果$loginUser为空
        if (empty($LoginUser)) {
            // 弹出请先登录提示框并返回登录界面
            $this->error('请先登录', url('home/index/login'));
        } else {
            // 获取用户表所有数据
            $UserList = model('User.User')->column('id,salt');

            // 存放id的字符串
            $userid = 0;

            foreach ($UserList as $key => $value) {
                //加墨数据库里面所有的id和密码盐 
                $UserSalt = md5($key . $value);
                //挑出当前用户的的id
                if ($LoginUser == $UserSalt) {
                    // 将当前用户的id赋值給$userid
                    $userid = $key;
                    break;
                }
            }

            // 根据id去查询用户表 与id相对应的那一条
            $User = model('User.User')->find($userid);
            // $User = Db::table('pre_user')->find($userid);

            //如果不存在
            if (!$User) {
                // 将cookie里面的用户信息清除
                cookie('LoginUser', null);
                // 弹出非法登录框并返回登录界面
                $this->error('非法登录', url('home/index/login'));
            }

            // 如果存在 把用户数据给继承home公共控制器的子控制器
            $this->LoginUser = $User;


            // 赋值视图
            $this->assign([
                'LoginUser' => $User
            ]);
        }
    }
}
